package com.linln.component.job;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.cache.annotation.CacheEvict;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;
import com.linln.modules.ticket.service.TicketService;

import java.time.LocalDateTime;

/**
 * @author : pengliang
 * @version V1.0
 * @Project: timo
 * @Package com.linln.component.job
 * @Descriptio /**
 * @Project: timo
 * @Package com.linln.component.job
 * @Description: 每天凌晨12点判断服务券是否已到了过期时间  过期了的话 将状态改为已过期
 * @date Date : 2020年12月07日 10:05
 */
@Component
public class ServiceCouponExpiredJob {
    @Autowired
    private TicketService ticketService;

    //3.添加定时任务 没15秒执行一次
//    @Scheduled(cron = "0/15 * * * * ?")
    //每天凌晨1点执行
    @Scheduled(cron = "0 0 1 * * ?")
    //更改状态之后 将已过期的服务券 未使用的服务券 和服务券详情 的缓存清除掉
    @CacheEvict(cacheNames = {"ticket/expire", "ticket/notUse", "ticketInfo"}, allEntries = true)
    public void execute() {
        System.err.println("定时任务启动中" + LocalDateTime.now());
//        redisUtil.del("ticket");
        ticketService.checkExpire();
    }
}
